turned convenience macros into convenience
authorJonathan Blandford <jrb@redhat.com>
Thu, 28 Oct 1999 19:00:02 +0000 (19:00 +0000)
committerJonathan Blandford <jrb@src.gnome.org>
Thu, 28 Oct 1999 19:00:02 +0000 (19:00 +0000)
1999-10-28  Jonathan Blandford  <jrb@redhat.com>

* src/gdk-pixbuf.h: turned convenience macros into convenience

gdk-pixbuf/ChangeLog
gdk-pixbuf/gdk-pixbuf.c
gdk-pixbuf/gdk-pixbuf.h

index a33d855380d4094c6073bcea7ae49fb8e055d803..d01c3ef443a644a495ae2800bc9cd9a02693d78f 100644 (file)
@@ -1,5 +1,8 @@
 1999-10-28  Jonathan Blandford  <jrb@redhat.com>
 
+       * src/gdk-pixbuf.h: turned convenience macros into convenience
+       functions so some error checking could be added. 
+
        * src/io-tiff.c (image_load_increment): started work on the tiff
        non-incremental loader.
        (image_begin_load): Finished the incremental loader. 
index 4aacd3b17158574b8fb0f41c4326fe2871c65965..cc0d8412912e087ddf41a822c11bf8ab2edd81c4 100644 (file)
@@ -147,3 +147,78 @@ gdk_pixbuf_new (ArtPixFormat format, gboolean has_alpha, int bits_per_sample,
        return gdk_pixbuf_new_from_data (buf, format, has_alpha, width, height, rowstride,
                                         free_buffer, NULL);
 }
+
+
+/* Convenience functions */
+ArtPixFormat
+gdk_pixbuf_get_format (GdkPixbuf *pixbuf)
+{
+       /* Unfortunately, there's nothing else to return */
+       g_return_val_if_fail (pixbuf != NULL, ART_PIX_RGB);
+       g_assert (pixbuf->art_pixbuf != NULL);
+
+       return (pixbuf->art_pixbuf->format);
+}
+
+int
+gdk_pixbuf_get_n_channels (GdkPixbuf *pixbuf)
+{
+       g_return_val_if_fail (pixbuf != NULL, -1);
+       g_assert (pixbuf->art_pixbuf != NULL);
+
+       return (pixbuf->art_pixbuf->n_channels);
+}
+
+int
+gdk_pixbuf_get_has_alpha (GdkPixbuf *pixbuf)
+{
+       g_return_val_if_fail (pixbuf != NULL, -1);
+       g_assert (pixbuf->art_pixbuf != NULL);
+
+       return (pixbuf->art_pixbuf->has_alpha);
+}
+
+int
+gdk_pixbuf_get_bits_per_sample (GdkPixbuf *pixbuf)
+{
+       g_return_val_if_fail (pixbuf != NULL, -1);
+       g_assert (pixbuf->art_pixbuf != NULL);
+
+       return (pixbuf->art_pixbuf->bits_per_sample);
+}
+
+guchar *
+gdk_pixbuf_get_pixels (GdkPixbuf *pixbuf)
+{
+       g_return_val_if_fail (pixbuf != NULL, NULL);
+       g_assert (pixbuf->art_pixbuf != NULL);
+
+       return (pixbuf->art_pixbuf->pixels);
+}
+
+int
+gdk_pixbuf_get_width (GdkPixbuf *pixbuf)
+{
+       g_return_val_if_fail (pixbuf != NULL, -1);
+       g_assert (pixbuf->art_pixbuf != NULL);
+
+       return (pixbuf->art_pixbuf->width);
+}
+
+int
+gdk_pixbuf_get_height (GdkPixbuf *pixbuf)
+{
+       g_return_val_if_fail (pixbuf != NULL, -1);
+       g_assert (pixbuf->art_pixbuf != NULL);
+
+       return (pixbuf->art_pixbuf->height);
+}
+
+int
+gdk_pixbuf_get_rowstride (GdkPixbuf *pixbuf)
+{
+       g_return_val_if_fail (pixbuf != NULL, -1);
+       g_assert (pixbuf->art_pixbuf != NULL);
+
+       return (pixbuf->art_pixbuf->rowstride);
+}
index e05cc1838daf8e011545ed32edb37bb192989d7e..5e517c070d139575eebe1566e9ac9a8b9e29c457 100644 (file)
@@ -50,22 +50,23 @@ struct _GdkPixbuf {
 
 \f
 
-/* Convenience macros */
+/* Convenience functions */
 
-#define gdk_pixbuf_get_format(pixbuf) ((pixbuf)->art_pixbuf->format)
-#define gdk_pixbuf_get_n_channels(pixbuf) ((pixbuf)->art_pixbuf->n_channels)
-#define gdk_pixbuf_get_has_alpha(pixbuf) ((pixbuf)->art_pixbuf->has_alpha)
-#define gdk_pixbuf_get_bits_per_sample(pixbuf) ((pixbuf)->art_pixbuf->bits_per_sample)
-#define gdk_pixbuf_get_pixels(pixbuf) ((pixbuf)->art_pixbuf->pixels)
-#define gdk_pixbuf_get_width(pixbuf) ((pixbuf)->art_pixbuf->width)
-#define gdk_pixbuf_get_height(pixbuf) ((pixbuf)->art_pixbuf->height)
-#define gdk_pixbuf_get_rowstride(pixbuf) ((pixbuf)->art_pixbuf->rowstride)
+ArtPixFormat gdk_pixbuf_get_format          (GdkPixbuf *pixbuf);
+int          gdk_pixbuf_get_n_channels      (GdkPixbuf *pixbuf);
+int          gdk_pixbuf_get_has_alpha       (GdkPixbuf *pixbuf);
+int          gdk_pixbuf_get_bits_per_sample (GdkPixbuf *pixbuf);
+guchar      *gdk_pixbuf_get_pixels          (GdkPixbuf *pixbuf);
+int          gdk_pixbuf_get_width           (GdkPixbuf *pixbuf);
+int          gdk_pixbuf_get_height          (GdkPixbuf *pixbuf);
+int          gdk_pixbuf_get_rowstride       (GdkPixbuf *pixbuf);
 
 /* Reference counting */
 
 void gdk_pixbuf_ref (GdkPixbuf *pixbuf);
 void gdk_pixbuf_unref (GdkPixbuf *pixbuf);
 
+/* Constructors */
 /* Wrap a libart pixbuf */
 
 GdkPixbuf *gdk_pixbuf_new_from_art_pixbuf (ArtPixBuf *art_pixbuf);